package xyz.icxl.android.architecture.data.net.okhttp.interceptors

import okhttp3.Interceptor
import okhttp3.Response

/**
 * 文件描述：添加自定义请求头数据的拦截器
 *
 * 文件创建人：ChenXinLei
 *
 * 文件创建人联系方式：502616659(QQ)
 *
 * 创建时间：2020 年 04月 27 日
 *
 * 文件版本：v1.0
 *
 * 版本描述：创建文件
 */
open class HeaderInterceptor(private val getHeaderParameter:()-> HashMap<String,String> ={ HashMap() }) : Interceptor {
    override fun intercept(chain: Interceptor.Chain): Response {
        val builder=chain
            .request()
            .newBuilder()
        val mHeaders: HashMap<String,String> = getHeaderParameter()
        builder.addHeader("content-type", "application/json;charset:utf-8")
        mHeaders.forEach {
            builder.addHeader(it.key,it.value)
        }

        return chain.proceed(builder.build())
    }
}